iT邦幫忙

2024 iThome 鐵人賽

DAY 22
0
AI/ ML & Data

Web仔從數學角度學習 AI/ ML & Data系列 第 22

Day 22 - Web仔從數學角度學習 遞迴式神經網路 雙向LSTM

  • 分享至 

  • xImage
  •  

註:本文同步更新在Notion!(數學公式會比較好閱讀)

迴式神經網路 (RNN) 之雙向 LSTM 模型

在序列數據的處理上,遞迴式神經網路 (RNN) 是一種強大的工具,它可以根據序列中的前後依賴性進行預測。然而,傳統的 LSTM 只會從前往後處理數據,這在某些需要同時考慮過去與未來信息的場景下並不理想。為了解決這個問題,雙向 LSTM (Bidirectional LSTM, BiLSTM) 應運而生,它通過同時考慮正向和反向的信息,使模型在處理序列數據時更加靈活且準確。

1. 雙向 LSTM 的結構

雙向 LSTM 是基於傳統 LSTM 的改進版本,其主要特徵是擁有兩個 LSTM 網路,一個從序列的起點處理到終點(正向 LSTM),另一個則從終點處理到起點(反向 LSTM)。這樣,雙向 LSTM 能夠同時考慮序列中的前後信息,提供更完整的上下文。

雙向 LSTM 的數學公式:
https://ithelp.ithome.com.tw/upload/images/20241004/20168898CJ1R1Iq4h3.png

2. 雙向 LSTM 的數學推導

雙向 LSTM 的核心仍是依賴於傳統 LSTM 的門控機制,即遺忘門、輸入門和輸出門。對於每一個 LSTM 單元,數學運算方式和單向 LSTM 相同。不同的是,雙向 LSTM 將正向和反向隱藏狀態進行結合,使得每個時間步的輸出都包含了來自前後兩個方向的完整信息。

具體來說:
https://ithelp.ithome.com.tw/upload/images/20241004/201688985XhUnNr3EB.png
通過將這兩個隱藏狀態拼接在一起,模型在每個時間步上獲得了序列兩端的信息,使得學習效果更加充分。

3. 雙向 LSTM 的應用場景

雙向 LSTM 尤其適合需要同時考慮序列中的過去和未來信息的任務。在這些任務中,BiLSTM 能夠顯著提高模型的表現:

  • 自然語言處理 (NLP):在句法分析、命名實體識別(NER)、語音到文本轉換等任務中,雙向 LSTM 被廣泛應用。由於句子的含義往往依賴於前後文,BiLSTM 能夠更好地捕捉語境信息。
  • 機器翻譯:在處理源語言文本時,翻譯模型需要了解上下文以生成準確的目標語言文本。雙向 LSTM 能夠幫助模型充分理解文本含義。
  • 語音識別:語音信號是一種典型的序列數據,雙向 LSTM 通過考慮前後信息,能夠更準確地識別語音片段中的語音特徵。

4. 雙向 LSTM 與單向 LSTM 的比較

  • 信息完整性:單向 LSTM 僅基於序列的過去信息進行預測,而雙向 LSTM 則同時考慮了過去和未來信息,因此在序列標記等任務中效果更佳。
  • 計算成本:雙向 LSTM 的計算量比單向 LSTM 更高,因為它需要兩個獨立的 LSTM 層來處理正反兩個方向的數據。這意味著它在訓練和推理時所需的資源較多。
  • 應用場合:單向 LSTM 更適合實時處理或因果序列分析,因為它僅基於過去信息進行決策。而雙向 LSTM 更適合那些需要完整上下文的任務。

5. 雙向 LSTM 的數學優勢

雙向 LSTM 在數學上相較於單向 LSTM 有顯著的優勢:

  • 完整序列信息的捕捉:在模型訓練過程中,通過同時處理正向和反向序列,雙向 LSTM 能夠更好地學習序列中前後依賴的信息。
  • 提高模型的表達能力:BiLSTM 通過雙向學習,能夠捕捉到更多的信息模式,這在許多任務中能夠顯著提高模型的準確率。

雙向 LSTM 是對傳統 LSTM 的擴展,它通過引入反向處理,使模型能夠同時利用序列的前後文信息,從而在許多序列學習任務中表現出色。儘管雙向 LSTM 需要更多的計算資源,但它的強大功能使得其在語音識別、自然語言處理和其他需要上下文信息的任務中成為了不可或缺的工具。

上一天班又放假了~~~好開心呀


上一篇
Day 21 - Web仔從數學角度學習 遞迴式神經網路 GRU模型
下一篇
Day 23 - Web仔從數學角度學習 侷限型波茲曼模型RBM
系列文
Web仔從數學角度學習 AI/ ML & Data30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言